<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    use Notifiable;

    /**
     * The attributes that are mass assignable.
     * 设置允许批量填充的字段名称,方法$fillable属性的数组中的字段名称,是允许被批量填充的
     * @var array
     */
//    protected $fillable = [
//        'nickname', 'email', 'password',
//    ];

    //设置不允许批量填充的字段名称,如果填写在数组内的是不允许填充的,其他的就都允许填充
    protected $guarded = ['password_confirmation'];

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'remember_token',
    ];


    /**
     *
     * 根据当前模型和需要去被关联模型之间的关联关系来决定使用什么方法定义模型关联
     * 第一个参数是定义当前模型需要去关联的模型类名称
     * 第二个参数是外键(相对于当前来说,是被关联模型的关联字段名称)
     * 第三个参数是內键(当前模型的关联字段名称)
     *
     * @return \Illuminate\Database\Eloquent\Relations\HasMany
     */
    public function blog(){
        return $this->hasMany(Blog::class,'uid','id');
    }
}
